The online racing simulator
Searching in All forums
(993 results)
EQ Worry
S2 licensed
Right, took me some time to recreate the cause. Your trouble was caused by two coinciding factors: Empty CustomCars string and empty DefaultCar on all leves. When either is defined, everything works as expected.

I corrected the code a bit making sure some default car (XFG, to be specific) is always used, even if none is defined. Having no car type can lead to other troubles so it is better to have this solved. I'll be posting updated 2.2.2 in a short while (DONE).

I plan to release 2.2.3 once it supports tab-separated (and not only line-separated) STA files format as requested.
Last edited by EQ Worry, .
EQ Worry
S2 licensed
Well, actually the trouble is somewhere else than I thought, stay tuned...
EQ Worry
S2 licensed
Aahh, right, looks like an ommission on my part, not taking into account the string may be empty. For now please use the default line, I'll correct the code in next release...
EQ Worry
S2 licensed
My guess would be incorrect definition of some custom car. Default Airio setting in TCD file:

CustomCars=FX2|FXR,23,0 XR2|XRR,25,0 FZ2|FZR,20,0

Care to post here your own if different from default?
EQ Worry
S2 licensed
Hmmm, the file should be OK in the language pack, saved as UTF-8. I currently do not know what else could be causing your troubles. Many people use language files with yet stranger characters than German language uses and I've heard of no troubles so far.

About the restricted (spectating) and limited (ignoring that lap) zones: Certainly it is possible to define those for every track (or even specific track/car combinations). Drive to one end of such a zone, type !loca, read the X and Y numbers. Drive to opposite end, type it again. Calculate center and radius of the circular zone, enter it at the appropriate place in Airio.tcd.txt file.

It is just sort of manual work, but you need to make sure by experiments the zones are correctly places. By default they are included only for demo tracks because layouts (tyres, barriers) are not possible there. I have no zones for other tracks available, never needed those. But especially limited zones may be useful there, because you can cut in emergency without crashing and Airio will just ignore your lap time. They are good way to have stats free of cutting lap times...
EQ Worry
S2 licensed
If you have updates the language file make sure it is saved as UFT-encoded file (UTF-8 preferred) and not as ASCII file. Airio will convert to LFS codes correctly only UTF-encoded strings. Just open it, save as UTF-8 and type !rld in Airio. That should solve your troubles (hopefully).
EQ Worry
S2 licensed
Was it a spectating for idling? If so, yes, it may happen. It is no bug in Airio, any mismatched IDs would be discovered long ago, too many things depend on absolutely correct internal connections and drivers management.

It happens occassionally when you have a lag or something. The server reports you as joining, but it never sees you moving. Also for other drivers you look on the map like you're still in pits, your triangle not moving. I'm not sure if anyone can in fact see your car moving, but I doubt that. So, server does not see you moving, nobody else sees you moving, and Airio cannot see you moving as well, so it will (in race) spectate you for idling after a while.

There's really nothing I can do about it, call it a LFS bug caused by some lag of incorrect info or something of the sort. I've seen a guy having this problem repeatedly. I suggest you try to reconnect if this happens, or restart router or such, anything to put your connection in a bit different state. Also restarting your LFS may help, because it is really caused by wrong communication of your LFS instance with the server.
EQ Worry
S2 licensed
@ Punchy : So nice to hear from you. I'm always looking forward to the moment when a virtual person becomes real again, getting into some car.

@ Finns : OK, I'll correct that, but note this message is not present in newer Airio versions anyway.
EQ Worry
S2 licensed
Quote from DuleXY :I dont think that this is to hard for someone like U

LOL, thanks for your trust.

My initial and very rough idea would be to use an external file(s) for this. In that file you'll specify the parameters required/gathered plus other info. One or two new Airio commands will allow people to see the available cups+info and to sign in/out. This will change the original text file, adding new record or removing an old one. It will be up to some Web scripts (which I cannot provide) to process the text file and display e.g. current subscriptions on a Web page. Then probably also the option to limit certain server only to subscribed drivers would be nice to have.

You need to see however this is not a matter of 60 minutes to implement. It would require a day or two and I currently cannot devote even a single hour to this matter. Maybe in one month in may be available, but it will almost surely be limited to FULL version only. Sorry for this delay, but I can't help it.
EQ Worry
S2 licensed
Quote from jolzen :----EVENT----
If exist file --> [Airio.cfg.nc.txt]
then FAQ/Notes/Rules buttons doesn't work.
----To solve----
1. Rename Airio.cfg.nc.txt
2. Include items to Airio.cfg.txt

Newer Airio versions support FAQ/Notes/Rules button definitions only in Airio.cfg.txt file.

Quote from jolzen :I separeted file to Airio.cfg.nc.txt many Curse word.
This is my mistake. ... ...

Sorry, I do not understand this about curse words. Do you have some problem? It is not clear if you're asking something or reporting some bug or yet something else.

Quote from CPRman :Just wanted to say thanks for all your work and help, my LFS server is up and running with 0 problems ...

Ahh, that's very nice to hear.
EQ Worry
S2 licensed
Airio 2.2.2 is now available. It does not support yet safety ratings (currently I'm trying to discover in what way yellow flags are raised and withdrawn) nor new STA file format.

Of the general interest features it cleans !pb and !pi lists. PB shows data related to certain track/car combination such as PB and TB data but also points and lap/race time and drift points in that combo (in FULL also podiums and licence). PI on the other hand shows global driver data, such as total laps and points (with rank in FULL), playing points total podiums (in FULL) and list of track/car combos.

Once average lap time is implemented, it would go to PB list because it is track/car dependant. On the other hand safety rating will be shown in PI (player info), because it would be instance-global rating.

Also the principles of custom grid with qualification combined with track rotations were improved. For full list of updates see the changelog.

FULL version features support for custom selectable time comparison base. Drivers may define any value for the current track/car combination and split/sector lap times will be compared to this value (in the buttons at the top of the screen). Very good for seeing where you need to improve to reach certain lap time.
EQ Worry
S2 licensed
Hmmmm, I have to concede your format looks much better and would even save a few bytes on each entry. I guess also format updates (adding new items) would be easier.

The problem now is some people are already using stat files in the current format - their custom PHP scripts would have to be redesigned. So if I'm going to support that format, it needs to be optional only - using a config item to switch between line-separated and tab-separated values. Commas cannot be used because they may be part of nickname making parsing rather complicated. But I believe tabs could be used safely.

Thanks for this idea.
EQ Worry
S2 licensed
About limiting server access

Many racers think that you can ensure clean races by defining some high lap time limit (meaning requiring really good time). But my experience shows severe limits lead quickly to empty server. Average drivers cannot join race there and the good drivers are not in the end interested in races with 2 or 3 other cars. They need, after all, someone who would admire them.

For example in AA demo BL1+FBM server we use 1:18 as the required lap time (stored on server or on LFSW), and that only in certain day period (prime time) and only if enough people are connected (say more than 10). I would maybe consider lowering it to 1:16 because the server is quite popular with many good drivers, but 1:14 is a no-go, it would be far too prohibitive.

And of course we have cool crashes there even if all connected have lap time < 1:14. Small mistake or disrespect/unawarness in turn 1 or chicane 1 and you have a pile of angry people.

About commands

Anyone is free to turn off display of other peoples' commands, but not the other way around. This is intentional so that other people can see what you're doing and also can discover new commands that may have escaped their attention. Only in FULL version admins have the option to turn off all commands display (using HideAllCommands item in SRV file). No commands starting with simple ! will then be shown to anybody.

About safety rating

I'll try to implement the yellow flag ratio thing, as an informational value for now. I think it may be shown for players that have made at least 50 or 100 laps because otherwise it has no meaning. Also limiting access based on the ratio is something to think about because if I go over 50 percent, how can I improve if I can never join another race?

With some people we've been also discussing the possibility of calculating (moving) average lap time. That may also be of some value, but again there should be some limits on how bad laps (1st lap in race, lap after a crash) are used for the calculation.
EQ Worry
S2 licensed
Quote from vicbel :Could the stats files be generated in a record-by-line basis, with the fields being comma or tab delimited? I think this change inn format would facilitate the processing of the file(s) by third party apps.

Aaaah, sorry, I missed this question. Well, surely it could be done, but I do not see what advantage it would bring. I feel line-separated stat files are just as good as tab-separated. Am I wrong?

Quote from jolzen :Now, when I join any race, I have always think same problem. I want to be a fair race. But a few malicious Crasher destroy the race many time. Many racer get feel bad.
...
[Very good point]
When a racer join the course, displays safety percent and speed rank. (Maybe count bad driving, hit other car...)
...
[QUESTION]
Can Airio go have functions like this?
...
If we can know new join racer's [safety percent] and [speed rank], we can pay attention for him.

Right, hi, I see what you mean. The main problem is coming up with a reliable detection of who caused the crash. InSim offers only limited set of data and currently I do not see an easy way to get good crasher detection.

Also obvious crashers are easy to discover. If someone crashes on purpose he will not stay long on any server with admins around (or, to a certain extent, on server with voting allowed).

But many, many crashes are caused by accidents - risky driving, game lags. Small touch between two cars may lead to awful results, cars flying, hitting other cars, everyone spinning, toppling.

Anyway, I've been asked earlier for some use of yellow flags caused and I'll try to implement some simple measurement using this indication soon. It will simply count yellow flags caused per finished lap and while it will never be perfect indicator (because you cause yellow flag also when you are crashed, not by your fault), once the value gets accumulated it could be reasonably usable.

Such a "safety rating" could be displayed when a new driver connects or something, it could also be used later to limit race joins or anything else. But my experience tells me that too many limits quickly lead to an empty server. On the other hand full server (demo or licensed) will always lead to crashes, even when there's no crasher around and all people have good lap times.

As for speed rank, you may at any time see best lap times of all connected people by typing !tm. In case youre interested in server-only times, use !tms. On the other hand !tmw will display only LFSW times. The best lap time may be optionally shown on each new connection (using LFSW option) and the FULL version also allows to assign licences to lap times so that you always know what driver level is joining. Get overview by typing !lice or just !lc.
EQ Worry
S2 licensed
Quote from arco :Is it possible to choose what penalty to give for false starts? Did a quick search on it, but couldn't find any info.

I'm afraid thats's not possible. Penalties for false start are given by LFS server (or game) itself. I believe it is drive-through for small jump, spectate for large one. It would be possible to change the small jump penalty to something else (from clearing it to spectating the driver), but the spectating for large jump is hard-coded and I don't think we can do anything about it.
EQ Worry
S2 licensed
@ Bean0

I think I solved the troubles you mentioned (rotation with custom cars). Now the track/car changes not only convert custom cars into standard ones for the /cars command, but also manipulate automatically with prohibited cars string. So, if you use UFB in rotation string /cars=UFR would be sent but at the same time UFR will be a prohibited car and only UFB will be available. To have both, you need to specify UFR+UFB as new track cars. On the other hand if you specify just UFR, all custom cars derived from this one will be prohibited.

I believe this would be the expected behavior with custom cars acting as if they were real ones. All the above explained is also valid for the !/cars limad/admin command. I'm not particularly happy about manipulating with prohibited cars string, because it may lead to some confusion about current server state, but of course !rld may always be used to get back to default state according to config files.

It would be nice of you to download the latest 2.2.1 compile, just overwrite EXE and PDB files and test if everything acts as it is supposed to. Also in this compile I solved a thing about rotation that troubled me a bit, basically the hidden impossibility to use the same track twice in rotation. With current version this is no more the case, you may have the same track in rotation as many times as you wish.

@ TouringBubble

No InSim application can make cars to appear on grid (join race), that always requires (I think) driver's action. InSim may only e.g. spectate a driver that has joined the race out of order (which would have to be communicated by messages).
EQ Worry
S2 licensed
Quote from Bean0 :I am having a problem with track rotations using custom cars. ... I am trying to rotate tracks/cars using the UF1, UFR, and UFB but it does not enforce the restriction on the UFB. ... Am I doing it wrong, or does the custom car type not work as I am expecting ?

You are right, custom cars in rotation don't work as you'd like/expect to. As I note somewhere in changelog, custom cars are simply changed to standard cars for the LFS /cars command. Sooo, as it stands now you'd have no problem rotating tracks for a custom or standard car, but you'd experience exactly the troubles you describe when trying to rotate tracks and switch between custom/standard cars.

When I was addig custom cars support I wanted full custom cars support in rotation, achieved by changing prohibited cars string. But I'd run into certain difficulties so for the time being I decided to go the quick and dirty way. But seeing you (and sure others) need to switch the car types, I'll look at this feature once more.

Quote from bunder9999 :did the airio website go down?

Yes, it was temporarily out of service, but it is really a provider responsibility which I can do little about.

Quote from TouringBubble :1) Mostly locked setups for stock classes - only a few values can be modified
2) Limited passes on an autocross layout - "3 runs and done" - competitors cannot change name/car and race again after their 3 timed runs, but can spectate.
3) Auto points tracking based on class - Class could be in the driver name ... ASP-M.Williams maybe
4) Time based auto spectate drivers after each run - Maybe 5 seconds after they cross finish
5) Race join timer based on previous car's time on course - next car can join race 25 seconds after previous car starts. The standard autocross start timer can stay at 3-5 seconds.
6) Start queue with configurable timer - This would be spectacular!

Well, well, this is complicated. I try to develop Airio as a flexible racing system with features that may be required by many. What you need is high customization and some very specific features. I'll try to comment shortly on some of those:

1) Very hard or impossible to achieve. InSim does not report much about car setup, the only usable parameter there being symmetric wheels (and maybe TC/ABS). You can't read detailed settings, much less compare them to some default.

2) Could be done, joining or changing car/name would mean a kick.

3) You could create classes using custom cars. Such have their separate complete stats incl. scored points (on each track/layout).

4) Surely possible (but I don't see the reason?).

5) Something could be done, but it will make exact timing basically impossible to achieve. The only exact times are reported by your LFS instance to server and then from server to Airio. It is not possible to stop the time for someone and while certain solutions are usable (e.g. artifically reduce the reported split/lap times by start delay value), they may prove to be rather complicated and inexact.

6) I'm not sure what this is. I have a request already for (maybe) something similar, specifically delayed start (with countdown) allowing for some shuffling on start grid. But then point 5 applies.

Problem with some of the above needs is they are highly specific. I have barely enough time to add (and also correct) features that are required/used by many. Now I'm not sure now how to close my response in some positive fashion. I'd certainly like to support your needs, but they should be universal and flexible enough.
EQ Worry
S2 licensed
Quote from vicbel :1. Is there a way to have a list of authorized users based on LFS username? (only players registered for a champ can login)
2. Is there a way to restrict the user/car combo. For example Joe can only login using FXR.

Hm, no, currently neither of these options is available. I can imagine adding new config item into SRV file doing this both (or maybe better yet a link to some external text file containing the required data). Just like there are prohibited names there could be allowed names (optionally with car types) and a switch to turn on/off this filter.

In any case that would require new options and checks (neither of them complicated, to be sure), but also some work on the admin part, updating configs with usernames optionaly with car types
EQ Worry
S2 licensed


Note that these kicks for "impossible" time are counted and by default 5th auto-kick from server for any reason in one day is converted to short ban for "bad behavior"...
EQ Worry
S2 licensed
Quote from EliteAti :Is it possible to make "too fast lap = kick" system in this? Because in [RSTO] series i dont want bumpdrafting to be allowed in FBM,FOX and BF1 so someone can tell me how (if) i can set up "kick" if player goes under WR on the server (or too much under WR)?

Yes, it is possible. Airio can check all split/sector/lap times and compare them to current WR. You may specify how much better than WR can a driver be in all split/sector times. In case better than allowed time is seen, the driver is "kicked for security", bacause he's seen as using speed hack.

Time checking filter is by default turned off. So first step is to turn it back on on the server where you need to check times, that means in the appropriate SRV file (or the global one if it should run on all servers). As Bunder suggests, you do this by:

CheckTime=true

Then you should define in the same SRV file how much a split/sector time can be better than current WR. By default these values are used:

# Maximum (percentage * 100) allowed time comparing to WR - integer
# 10000 = security kick on every sector/split time better than WR.
# These settings may prevent using speed hacks, if they appear.
AllowedSectrTime=9800
AllowedSplitTime=9900

The values mean that any sector time (between splits) may not be better than 98 percent of WR. Also any split and lap time may not be better than 99 percent of WR. To set custom values you need to calculate required percentages.

Well, I hope this makes sense to you. Note that all the values may be updated "live" just by saving new configs and typing !rld admin command. But to ensure the new condition is applied to all cars you need to force them to join the race (leave pits) again. The !sa command may come handy for this, it spectates all drivers.

EDIT:

Quote from EliteAti :i need to "change" WR's in the wrs.txt log, hmm.. could you tell me which one of these is FBM,FOX,FO8 and BF1 WR in the wrs.txt?

Well, I hope after reading the above you don't need to change WR time table by hand...
EQ Worry
S2 licensed
Well, I think the question stands differently a bit. No, currently track/layour changes are based only on number of completed races. Tracks will also be rotated after every race end voting, but not after some time expired... But I had several requests for this, so...
EQ Worry
S2 licensed
Yes, I guess you're right, !ptp shows total points for playing gained on any connected server, any track, any car. This number is stored in Airio.sta.un.txt, about 4th number from the end of each user item and you may delete the count for everyone by !clrp (clear playing) to start new series or something.

EDIT: 7th field, right. But I think reading usernames, nicknames and PTP data from one file, storing them in some array and sorting that array by points is easy work for PHP, no database import necessary. But then again, I might be mistaken.
Last edited by EQ Worry, .
EQ Worry
S2 licensed
I know some people are already using Airio stats directly on their Web pages, but I do not have any such scripts available.
EQ Worry
S2 licensed
While I´m slowly giving up (but not quite yet) hope for having a FOX racing series, because it really does not generate sufficient interest among people around AirAttack servers, there´s certainly no reason for not having some races on a stable day/time, once a week. It may be FOX, it may be anything else, but say every Friday at 19:00 UTC we may probably gather and try some racing in a friendly atmosphere. (Dat/time change suggestions are welcome.)

Sooo, anyone interested please come this Friday, April 17th, 19:00 UTC to [AA] AirAttack Racing server (if it is private, use end to connect). Ther track prepared there is AS4 and we´re gonna use FOX once more. This combo is pretty interesting, requires care and precision. Sorry about this rather short notice (just 24 hours advance), I was in doubt whether to organize the event at all. But I hope zou´ll come in large number anyway to put some life into this project.

The event/race format is not yet specifically set, but it was suggested three neither short nor long races are not ideal. Very probably we´ll do 2 or 3 sprint races, say for 7 minutes plus one lap, no pitstop required, and then one longer race, e.g. 28 minutes plus 1 lap, one pitstop required. Hopefully that would make the races more attractive.

Take care and see you around tomorrow!
EQ Worry
S2 licensed
Well, I'm always unhappy if I have to do some changes to the basic structure of config files, such as creating a new one. That always means too much trouble for the users, for you. But I feel the current state of affairs (that is 3 primary config files) is reasonable from both logical and manageability points of views. About 8 external files were too many, 2 were too few.

Also I always hesitate before adding a new config option somewhere. I realize there's so many of them that finding the right one may be a problem. I'll try to make a sort of an index of options that would navigate you to the file and section you need.

But generally updates such as the one from 2.1.9 to 2.2.0 are not complicated. Basically you just overwrite EXE and PDB files and it is done. If there are new config items that you want to use, look them up in the default config files and copy them into your current configuration with appropriate values.

Do not forget that !rld is a miracle admin command allowing you to apply any changes in the config files without Airio restart. You need to stop and start Airio again only if doing EXE update (new version). I can't think of any other situation when this would be necessary.
FGED GREDG RDFGDR GSFDG